Also called PKC - Public Key Cryptography A form of encryption where the keys come in pairs. Each party has a public and private key - Public key of receiver is used by sender to encrypt the message - Private key of receiver is used to decrypt the message For instance, if Bob wants to encrypt a message, Alice would send her public key to Bob and then Bob can encrypt the message with Alice’s public key. Next, Bob would transmit the encrypted message to Alice who is able to decrypt the message with her private key. Thus, we encrypt the message with a public key and only the person who owns the private key can decrypt the message. ![[Pasted image 20230204163231.png]] Used for [[Digital Signatures]] Eg. DSA signatures and ElGamal encryption Based on the difficulty of one-way functions: - [[Factoring Large Prime Numbers (RSA)]] - [[Discrete Logarithm Problem]] There is a strong need for cryptographic algorithms robust to quantum computations > Asymmetric algorithms are not meant to replace symmetric ones as they are computationally costly. > They are mostly used for secure key exchange between end nodes > Used together with symmetric algorithms that still do the data encryption and decryption